﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ForrajeriaDAL;
using ForrajeriaDB;
using System.Transactions;
using System.Data;

namespace ForrajeriaBCL
{
    public class PedidoProveedorBCL : InterfaceBCL<PedidoProveedorMO>
    {

        private PedidoProveedorDAL pedidoProveedorDAL;
        private DetallePedidoProveedorDAL detallePedidoProveedorDAL;
        private DetallePedidoMO detallePedidoMO = new DetallePedidoMO();

        public List<PedidoProveedorMO> GetAll()
        {
            throw new NotImplementedException();
        }

        public string Adicionar(PedidoProveedorMO objPed, DataTable dt)
        {
            try
            {
                using(TransactionScope tra = new TransactionScope())
                {
                    int numPed = pedidoProveedorDAL.AdicionarRetorno(objPed);
                    int cont = 1;
                    foreach (DataRow dr in dt.Rows)
                    {
                        detallePedidoMO.Cantidad = int.Parse(dr["cantidad"].ToString());
                        detallePedidoMO.Forraje = int.Parse(dr["codigoForraje"].ToString());
                        detallePedidoMO.NroLinea = cont;
                        cont++;
                        detallePedidoMO.Precio = double.Parse(dr["precioTotal"].ToString());
                        detallePedidoMO.NroPedido = numPed;
                        detallePedidoProveedorDAL.Adicionar(detallePedidoMO);

                    }
                    tra.Complete();

                }
                return "1";
            }
            catch
            {
                return "Error Al modificar el Forraje";
            }
        }


        public string Adicionar(PedidoProveedorMO item)
        {
            throw new NotImplementedException();
        }

        public string Eliminar(PedidoProveedorMO item)
        {
            throw new NotImplementedException();
        }

        public string Actualizar(PedidoProveedorMO itemNuevo, PedidoProveedorMO itemViejo)
        {
            throw new NotImplementedException();
        }
    }
}
